/*
 * ppd.h
 *
 *  Created on: 23/09/2011
 *      Author: utn_so
 */

#ifndef PPD_H_
#define PPD_H_


//typedef struct{
//	char bufferSector[BLOQUE_512];
//}PPD_SECTOR_DEVUELVE;

/*
Funcion que abre el archivo fat32 que mapea el disco (Mapping File Into Memory) devolviendo un handler
para poder realizar operaciones de E/S con el archivo.
*/
char* ppd_abrirArchivo();

/*
Funcion que permite devolver toda la informacion guardada en un sector
Si el valor de retorno es -1, no se pudo leer el sector
*/

void ppd_leerSector(int32_t sectorARetornar,char* handlerAchivoMapeado,tSector * sectorDevuelto);

/*
Funcion que recibe informacion para guardar en un sector.
Devuelve
0- No pudo grabarse
1- Grabado exitoso
*/
int32_t ppd_escribirSector(int32_t sectorAEscribir, char* bufferSector,char* handlerAchivoMapeado);

//Devuelve un handler con el disco apuntando al sector adecuado
char *getSector(char* handlerDiscoMapeado, int32_t sector);

//Devuelve el tamaño del disco usado
int32_t tamanioDisco();

void thread_msync ();

//Devuelve la cantidad total de sectores
//int32_t cantidadTotalDeSectores();


#endif /* PPD_H_ */
